$(function(){
    $.extend($.fn.validatebox.defaults.rules, {
    	
       //验证[A-Z]||[a-z]||[0-9]的字符
       numberOrLetter:{
    	   validator:function(value){
    		   return /^[a-zA-Z0-9]+$/.test(value);
    	   },
    	   message:"可用字符为a-z或者A-Z或者0-9"
       },
       idcard : {// 验证身份证 
           validator : function(value) { 
               return /^\d{15}(\d{2}[A-Za-z0-9])?$/i.test(value); 
           }, 
           message : '身份证号码格式不正确' 
       },
         minLength: {
           validator: function(value, param){
               return value.length >= param[0];
           },
           message: '请输入至少（2）个字符.'
       },
       length:{validator:function(value,param){ 
           var len=$.trim(value).length; 
               return len>=param[0]&&len<=param[1]; 
           }, 
               message:"输入内容长度必须介于{0}和{1}之间." 
           },
       //长度校验--不排除空格
       length_blank:{validator:function(value,param){ 
           var len=value.length; 
               return len>=param[0]&&len<=param[1]; 
           }, 
               message:"输入内容长度必须介于{0}和{1}之间." 
           },
       phone : {// 验证电话号码 
           validator : function(value) { 
        	   value=$.trim(value);
        	   if(value==""){
        		   return true;
        	   }
               return /^((\(\d{2,3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}(\-\d{1,4})?$/i.test(value); 
           }, 
           message : '格式不正确,请使用下面格式:020-88888888' 
       }, 
       mobile : {// 验证手机号码 
           validator : function(value) { 
        	   value=$.trim(value);
        	   if(value==""){
        		   return false;
        	   }
               //return /^(13[0-9]|15[012356789]|17[012356789]|18[0-9]|14[57])[0-9]{8}$/i.test(value);
                return /^(1[0-9]{10})$/i.test(value);  
           }, 
           message : '手机号码格式不正确' 
       }, 
       overZero: {// 验证大于0的数(最多三位小数)
           validator : function(value) { 
               return /^(?!0+(?:\.0+)?$)(?:[1-9]\d*|0)(?:\.\d{1,3})?$/i.test($.trim(value)); 
           }, 
           message : '请输入大于0的数(最多三位小数)，并确保格式正确' 
       },
       overZeroTow: {// 验证大于0的数(最多两位小数)
           validator : function(value) { 
               return /^(?!0+(?:\.0+)?$)(?:[1-9]\d*|0)(?:\.\d{1,2})?$/i.test($.trim(value)); 
           }, 
           message : '请输入大于0的数(最多两位小数)，并确保格式正确' 
       }, 
       intOrFloat : {// 验证整数或小数 
           validator : function(value) { 
               return /^\d+(\.\d+)?$/i.test($.trim(value)); 
           }, 
           message : '请输入数字，并确保格式正确' 
       }, 
       currency : {// 验证货币 
           validator : function(value) { 
               return /^\d+(\.\d+)?$/i.test($.trim(value)); 
           }, 
           message : '货币格式不正确' 
       }, 
       qq : {// 验证QQ,从10000开始 
           validator : function(value) { 
               return /^[1-9]\d{4,10}$/i.test(value); 
           }, 
           message : 'QQ号码格式不正确' 
       }, 
       integer : {// 验证整数 
           validator : function(value) { 
               return /^[+]?[1-9]+\d*$/i.test($.trim(value)); 
           }, 
           message : '请输入整数' 
       }, 
       age : {// 验证年龄
           validator : function(value) { 
               return /^(?:[1-9][0-9]?|1[01][0-9]|120)$/i.test($.trim(value)); 
           }, 
           message : '年龄必须是0到120之间的整数' 
       }, 
       
       chinese : {// 验证中文 
           validator : function(value) { 
               return /^[\Α-\￥]+$/i.test($.trim(value)); 
           }, 
           message : '请输入中文' 
       }, 
       english : {// 验证英语 
           validator : function(value) { 
               return /^[A-Za-z]+$/i.test($.trim(value)); 
           }, 
           message : '请输入英文' 
       }, 
       
       chinesename : {// 验证中文名
           validator : function(value) { 
               return /^[\Α-\￥]+$/i.test($.trim(value)); 
           }, 
           message : '请输入中文名' 
       }, 
       englishname : {// 验证英语名
           validator : function(value) { 
               return /^[^\Α-\￥]+$/i.test($.trim(value));
           }, 
           message : '请输入英文名' 
       },
       englishcode : {// 验证代码
           validator : function(value) { 
               return /^[A-Za-z0-9_-]+$/i.test($.trim(value));
           }, 
           message : '请输入字母、数字、下划线_、中横线-' 
       }, 
       unnormal : {// 验证是否包含空格和非法字符 
           validator : function(value) { 
               return /.+/i.test(value); 
           }, 
           message : '输入值不能为空和包含其他非法字符' 
       }, 
       username : {// 验证用户名 
           validator : function(value) { 
               return /^[a-zA-Z]{5,12}$/i.test($.trim(value)); 
           }, 
           message : '5-12位英文字母，不区分大小写，不支持其他字符' 
       }, 
       adminUserName : {// 验证用户名 
    	   validator : function(value) { 
    		   return /^[a-zA-Z]{1,}$/i.test($.trim(value)); 
    	   }, 
    	   message : '限制英文字母，不区分大小写，不支持其他字符' 
       }, 
       faxno : {// 验证传真 
           validator : function(value) { 
//               return /^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/i.test(value); 
               return /^((\(\d{2,3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}(\-\d{1,4})?$/i.test(value); 
           }, 
           message : '传真号码不正确' 
       }, 
       zip : {// 验证邮政编码 
           validator : function(value) { 
               return /^[1-9]\d{5}$/i.test($.trim(value)); 
           }, 
           message : '邮政编码格式不正确' 
       }, 
       
       emailCheck : {//邮箱校验
    	   validator : function(value) { 
    		   	return /^(\w+((-\w+)|(\.\w+))*){2,}\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]{2,})(((\.)([A-Za-z0-9]{2,}))?)$/i.test($.trim(value));
    		   	//return /^\(w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/).test($.trim(value));
    	   },
    	   message : '邮箱格式错误'
       },
       
       ip : {// 验证IP地址 
           validator : function(value) { 
               return /d+.d+.d+.d+/i.test(value); 
           }, 
           message : 'IP地址格式不正确' 
       }, 
       name : {// 验证姓名，可以是中文或英文 
           validator : function(value) { 
               return /^[\Α-\￥]+$/i.test(value)|/^\w+[\w\s]+\w+$/i.test($.trim(value)); 
           }, 
           message : '请确认您的姓名格式' 
       },
       companyname : {// 验证姓名，可以是中文或英文 
    	   validator : function(value) { 
    		   return /^[\Α-\￥A-Za-z\s]+$/i.test($.trim(value)); 
    	   }, 
    	   message : '只允许输入中文、英文字符！' 
       },
       date : { //日期格式yyyy-MM-dd或yyyy-M-d
           validator : function(value) { 
           
               return /^(?:(?!0000)[0-9]{4}([-]?)(?:(?:0?[1-9]|1[0-2])\1(?:0?[1-9]|1[0-9]|2[0-8])|(?:0?[13-9]|1[0-2])\1(?:29|30)|(?:0?[13578]|1[02])\1(?:31))|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)([-]?)0?2\2(?:29))$/i.test(value); 
           },
           message : '请输入yyyy-MM-dd或yyyy-M-d的日期格式'
       }, 
       dateTime : {// 验证姓名，可以是中文或英文 
    	   validator : function(value) { 
    	   	 var reg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/;
    	   	 var r = value.match(reg);
    	   	 if(r == null){
    	   		return false;
    	   	 }
    	   	 return true;
          },
          message : '输入格式不正确，请按yyyy-MM-dd HH:mm:ss的格式输入！'
      },
       msn:{ 
           validator : function(value){ 
           return /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test(value); 
	       }, 
	       message : '请输入有效的msn账号(例：abc@hotnail(msn/live).com)' 
       },
       same:{ 
           validator : function(value, param){ 
               if($("#"+param[0]).val() != "" && value != ""){ 
                   return $("#"+param[0]).val() == value; 
               }else{ 
                   return true; 
               } 
           }, 
           message : '两次输入的密码不一致！'    
       },
       safe:{ 
           validator : function(value){ 
        	   return /^((?![a-zA-z]+$)(?!\d+$)(?![!@#$%^&*]+$))|(?![a-zA-z\d]+$)(?![a-zA-z!@#$%^&*]+$)(?![\d!@#$%^&*]+$)([a-zA-Z\d!@#$%^&*]+$)[a-zA-Z\d]+$/i.test($.trim(value)); 
	       }, 
	       message : '您设置的密码安全度比较低，请重新设置！'    
       },
       twoDecimal:{ // 验证小数位数
       	   validator : function(value){ 
           return /^-?\d+\.?\d{0,2}$/.test($.trim(value)); 
	       }, 
	       message : '最多保留两位小数' 	
       },
       twoByCNY:{ // 校验8位整数，最多带两位小数
    	   validator : function(value){ 
    		   return /^(([0-9]{0,8}\.\d{0,2})|(\d{0,8}))$/.test($.trim(value)); 
    	   }, 
    	   message : '8位整数，最多带两位小数' 	
       },
       twoDecimalPositive:{ // 验证小数位数
       	   validator : function(value){ 
       		   return /^\d+\.?\d{0,2}$/.test($.trim(value)); 
	       }, 
	       message : '请输入正数，最多保留两位小数' 	
       },
       thirdDecimalPositive:{ // 验证小数位数
       	   validator : function(value){ 
       		   return /^\d+\.?\d{0,3}$/.test($.trim(value)); 
	       }, 
	       message : '请输入正数，最多保留三位小数' 	
       }, 
       maxDecimalPositive:{
    	   validator : function(value){ 
    		   return /^\d+\.?\d{0,3}$/.test($.trim(value)) && value > 0 && value <= 50; 
	       }, 
	       message : '请输入最大50的正数，最多三位小数'
       },
       fourDecimal:{ 
       	   validator : function(value){ 
           return /^-?\d+\.?\d{0,4}$/.test($.trim(value)); 
	       }, 
	       message : '最多保留四位小数' 	
       },
       fourDecimalPositive:{  //验证小数4位的正数
       	   validator : function(value){ 
           return /^\d+\.?\d{0,4}$/.test($.trim(value)); 
	       }, 
	       message : '请输入正数，最多保留四位小数' 	
       },
       integer:{ // 验证整数
       	   validator : function(value){ 
           return /^-?\d+$/.test(this.value); 
	       }, 
	       message : '请输入整数' 	
       },
       number:{ // 验证数字
       	   validator : function(value){ 
           return /^-?(?:\d+|\d{1,3}(?:,\d{3})+)(?:\.\d+)?$/.test(this.value); 
	       }, 
	       message : '请输入数值格式' 	
       },
       positiveInteger:{ // 验证正整数
       	   validator : function(value){ 
       		return /^[0-9]\d*$/.test($.trim(value)); 
	       }, 
	       message : '请输入正整数' 	
       },
       money:{
    	   validator : function(value){ 
    		   return /^\d+\.?\d{0,2}$/.test($.trim(value)) && value >= 0 && value < 100000000; 
	       }, 
	       message : '金额只能为数字并且最多只能保留2位小数且不能超过8位'
       },
       paymoney:{
    	   validator : function(value){ 
    		   return /^\d+\.?\d{0,2}$/.test($.trim(value)) && value >= 0 && value < 100000000; 
    	   }, 
    	   message : '金额只能为数字并且最多只能保留2位小数且不能超过8位'
       },
       numberRange:{
    	   validator : function(value,param){ 
    		   return value >=param[0] && value <= param[1]; 
	       }, 
	       message:"输入内容长度必须介于{0}和{1}之间."  
       },
       removeSpaces:{
       	   validator : function(value){ 
           	return	value.replace(/(^\s*)|(\s*$)/g,"");
	       } 
       },
       compareDate:{ // 判断时间1是否小于时间2 
           validator : function(d1,d2){
	 	 	return ((new Date(d1.replace(/-/ig,'/'))) <= (new Date(d2.replace(/-/ig,'/'))));
			},
	       message : '后一时间不能小于前一时间' 
       },
       jobNum: {  //验证工作电话格式
           validator: function(value){
				var regex = /^0\d{2,3}-\d{7,8}$/;
               return regex.test(value);
           },
           message: '请按照正确格式输入工作电话：0{2或3位数字}-{7或8位数字}'
       },
       costomsCode:{  //海关编码
    	   validator:function(value){
    		   var regex = /^\d{10}$/;
    		   return regex.test(value);
    	   },
    	   message: '输入内容长度必须是10位数字'
       }
   });  
});